home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Leser 15 / Amiga Plus Leser CD 15.iso / Tools / Development / MCC_SpeedBar / Developer / C / Include / MUI / SpeedBar_mcc.h next >
Encoding:
C/C++ Source or Header  |  2002-03-13  |  5.2 KB  |  125 lines

  1. #ifndef SPEEDBAR_MCC_H
  2. #define SPEEDBAR_MCC_H
  3.  
  4. /***********************************************************************
  5. **
  6. ** SpeedBar.mcc
  7. ** Copyright 1999-2002 by Simone Tellini
  8. **
  9. ** $VER: SpeedBar_mcc.h 12.3 (6.2.2002)
  10. ** Updated by Alfonso Ranieri
  11. **
  12. ***********************************************************************/
  13.  
  14. #ifndef LIBRARIES_MUI_H
  15. #include <libraries/mui.h>
  16. #endif
  17.  
  18. /***********************************************************************/
  19.  
  20. #define MUIC_SpeedBar       "SpeedBar.mcc"
  21. #define SpeedBarObject      MUI_NewObject(MUIC_SpeedBar
  22.  
  23. /***********************************************************************/
  24.  
  25. #define SBTAGBASE 0xF76B00A0
  26.  
  27. /***********************************************************************/
  28. /*
  29. ** Methods
  30. */
  31.  
  32. #define MUIM_SpeedBar_AddButton         (SBTAGBASE+1)
  33. #define MUIM_SpeedBar_AddButtonObject   (SBTAGBASE+2)
  34. #define MUIM_SpeedBar_AddSpacer         (SBTAGBASE+3)
  35. #define MUIM_SpeedBar_Clear             (SBTAGBASE+4)
  36. #define MUIM_SpeedBar_Rebuild           (SBTAGBASE+5)
  37. #define MUIM_SpeedBar_AddNotify         (SBTAGBASE+6)   /*  PRIVATE  */
  38. #define MUIM_SpeedBar_GetObject         (SBTAGBASE+7)
  39. #define MUIM_SpeedBar_DoOnButton        (SBTAGBASE+8)
  40.  
  41. /***********************************************************************/
  42. /*
  43. ** Attributes
  44. */
  45.  
  46. #define MUIA_SpeedBar_Borderless        (SBTAGBASE+1)   /*  BOOL                [IS..]     */
  47. #define MUIA_SpeedBar_Images            (SBTAGBASE+2)   /*  struct MyBrush **   [I.G.]     */
  48. #define MUIA_SpeedBar_SpacerIndex       (SBTAGBASE+3)   /*  UWORD               [I.G.]     */
  49. #define MUIA_SpeedBar_RaisingFrame      (SBTAGBASE+4)   /*  BOOL                [IS..]     */
  50. #define MUIA_SpeedBar_Buttons           (SBTAGBASE+5)   /*  struct SBButtons *  [I...]     */
  51. #define MUIA_SpeedBar_ViewMode          (SBTAGBASE+6)   /*  UWORD               [ISG.]     */
  52. #define MUIA_SpeedBar_SameWidth         (SBTAGBASE+7)   /*  BOOL                [I...]     */
  53. #define MUIA_SpeedBar_Spread            (SBTAGBASE+8)   /*  BOOL                [I...]     */
  54. #define MUIA_SpeedBar_StripUnderscore   (SBTAGBASE+9)   /*  BOOL                [I...]     */
  55. #define MUIA_SpeedBar_SmallImages       (SBTAGBASE+10)  /*  BOOL                [IS..]     */
  56. #define MUIA_SpeedBar_Sunny             (SBTAGBASE+11)  /*  BOOL                [IS..]     */
  57. #define MUIA_SpeedBar_SameHeight        (SBTAGBASE+12)  /*  BOOL                [I...]     */
  58. #define MUIA_SpeedBar_EnableUnderscore  (SBTAGBASE+13)  /*  BOOL                [I...] V12 */
  59. #define MUIA_SpeedBar_Pics              (SBTAGBASE+14)  /*  STRTR *             [I...] V12 */
  60. #define MUIA_SpeedBar_PicsDrawer        (SBTAGBASE+15)  /*  STRTR               [I...] V12 */
  61. #define MUIA_SpeedBar_TextOnly          (SBTAGBASE+16)  /*  BOOL                [..G.] V12 */
  62. #define MUIA_SpeedBar_BarSpacer         (SBTAGBASE+17)  /*  BOOL                [ISGN] V12 */
  63. #define MUIA_SpeedBar_UseMouseMove      (SBTAGBASE+18)  /*  BOOL                [I...] V12 */
  64. #define MUIA_SpeedBar_Strip             (SBTAGBASE+19)  /*  STRPTR              [I...] V12 */
  65. #define MUIA_SpeedBar_StripBrush        (SBTAGBASE+20)  /*  STRPTR              [I...] V12 */
  66. #define MUIA_SpeedBar_StripButtons      (SBTAGBASE+21)  /*  UWORD               [I...] V12 */
  67.  
  68. /***********************************************************************/
  69. /*
  70. ** Values
  71. */
  72.  
  73. #define MUIV_SpeedBar_Spacer                ((ULONG)-1)  /* Add a spacer                      */
  74. #define MUIV_SpeedBar_End                   ((ULONG)-2)  /* Ends a MUIS_SpeedBar_Button array */
  75.  
  76. #define MUIV_SpeedBar_ButtonFlag_Immediate  (1<<0)
  77. #define MUIV_SpeedBar_ButtonFlag_Disabled   (1<<1)
  78. #define MUIV_SpeedBar_ButtonFlag_Selected   (1<<2)
  79. #define MUIV_SpeedBar_ButtonFlag_Toggle     (1<<3)
  80.  
  81. #define MUIV_SpeedBar_ViewMode_TextGfx      0
  82. #define MUIV_SpeedBar_ViewMode_Gfx          1
  83. #define MUIV_SpeedBar_ViewMode_Text         2
  84.  
  85. /***********************************************************************/
  86. /*
  87. ** Structures
  88. */
  89.  
  90. /*
  91. ** MUIA_SpeedBar_Buttons is an array of
  92. ** this structure
  93. */
  94. struct MUIS_SpeedBar_Button
  95. {
  96.         ULONG           Img;        /* image index                                          */
  97.         STRPTR          Text;       /* button label                                         */
  98.         STRPTR          Help;       /* button help                                          */
  99.         UWORD           Flags;
  100.         struct IClass   *Class;     /* easy way of getting a toolbar of subclassed buttons  */
  101.         Object          *Object;    /* filled after init                                    */
  102. };
  103.  
  104. /*
  105. ** MUIA_SpeedBar_Images is an array of pointers
  106. ** to this structure
  107. **/
  108. struct MyBrush
  109. {
  110.     UWORD           Width;
  111.     UWORD           Height;
  112.     struct BitMap   *BitMap;
  113.     ULONG           *Colors;
  114. };
  115.  
  116. struct MUIP_SpeedBar_AddButton { ULONG MethodID; struct MUIS_SpeedBar_Button *Button; };
  117. struct MUIP_SpeedBar_AddButtonObject { ULONG MethodID; Object *Button; };
  118. struct MUIP_SpeedBar_AddNotify { ULONG MethodID; Object *Dest; struct MUIP_Notify *Msg; };
  119. struct MUIP_SpeedBar_GetObject { ULONG MethodID; ULONG Object; };
  120. struct MUIP_SpeedBar_DoOnButton { ULONG MethodID; ULONG Button; ULONG Method; /* ...args... */ };
  121.  
  122. /***********************************************************************/
  123.  
  124. #endif /* SPEEDBAR_MCC_H */
  125.